package com.luzhikun.service;

/*
 * @Author liu-miss
 * @Description 静态代理
 * @Date 16:55 2021/5/4
 * @Param
 * @return
 *
 * 静态代理类和装饰者模式的异同点
 *
 *  共同点：
 *  1.都要实现与目标类相同的业务接口
 *  2.都要声明目标对象
 *  3.都可以在不修改目标类的前提下增强目标类的目标方法
 *
 *
 *  异同点：
 *  1.使用目的不同：
 *      装饰者的使用目的是：增强目标对象
 *      静态代理的使用目的是： 是为了保护和隐藏目标对象
 *  2.对于目标对象的获取方式不同：
 *      装饰者类中目标对象的获取：通过带参构造器传入
 *      静态代理中目标对象是在无参构造器中直接创建处被代理类的实例对象
 *  3.功能增强的实现着不同:
 *      装饰者设计模式中存在装饰者基类，并不是真正的实现增强，而是由具体的装饰者进行功能增强的，所以存在装饰者链的概念
 *      静态代理设计模式中一般不存在发父子关系，具体的增强，就是由代理类完成，所以不存在链的概念
 *
 **/
public interface ISomeService {

    String doSome();
}
